package com.orhon.smartcampus.modules.systemctl.mm;


import java.util.List;

import org.mapstruct.InheritConfiguration;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;

import com.orhon.smartcampus.modules.base.mm.DictionaryMapper;
import com.orhon.smartcampus.modules.base.mm.GradeMapper;
import com.orhon.smartcampus.modules.base.mm.LangMapper;
import com.orhon.smartcampus.modules.base.mm.SchoolMapper;
import com.orhon.smartcampus.modules.base.mm.SubjectMapper;
import com.orhon.smartcampus.modules.systemctl.entity.OperationUserRelation;
import com.orhon.smartcampus.modules.systemctl.gqlModel.GQLSchoolOperationUsers;
import com.orhon.smartcampus.modules.user.mm.UserMapper;


@Mapper(uses = {
        DictionaryMapper.class,
        LangMapper.class,
        UserMapper.class,
        SubjectMapper.class,
        GradeMapper.class,
        SchoolMapper.class
        
})
public interface OperationUserMapper {

    OperationUserMapper MAPPER = Mappers.getMapper(OperationUserMapper.class);

    @Mapping(source = "id" , target = "id")
    @Mapping(target = "user" , ignore = true)
    @Mapping(target = "operation" , ignore = true)
    GQLSchoolOperationUsers toEmpty(OperationUserRelation entity);
    
    @InheritConfiguration(name = "toEmpty")
    List<GQLSchoolOperationUsers> toOrgDepartmentUserRelationList(List<OperationUserRelation> entities);

}
